package com.evildog.workspace.life.application.model;

import com.evildog.workspace.dependencies.mybatis.annotation.QueryCondition;
import com.evildog.workspace.dependencies.mybatis.annotation.QueryTableLogic;
import com.evildog.workspace.dependencies.mybatis.annotation.QueryUserCondition;
import com.evildog.workspace.dependencies.mybatis.enums.ComparisonOperatorsEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * album分页查询参数，可以使用QueryCondition.class
 * </p>
 *
 * @author evildog
 * @since 2020-08-02
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "Album查询参数/request body")
@QueryTableLogic
@QueryUserCondition
public class AlbumPageParam implements Serializable {


    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "分类")
    @QueryCondition
    private Long categoryId;

    @ApiModelProperty(value = "名称")
    @QueryCondition
    private String name;


    @ApiModelProperty(value = "开始时间")
    @QueryCondition(fieldName = "create_time", operator = ComparisonOperatorsEnum.GE)
    private LocalDateTime startTime;

    @ApiModelProperty(value = "结束时间")
    @QueryCondition(fieldName = "create_time", operator = ComparisonOperatorsEnum.GE)
    private LocalDateTime endTime;


}
